#include <stdio.h>
#include <string.h>
struct Student//声明定义一个新类型
{
    int num;
    char name[32];// 数组中存储整个字符串
    char sex;
};

int main()
{
    struct Student s;//创建对象,定义一个结构体变量
    //char ch;
    //scanf("%d%s%c%c", &s.num, s.name, &ch,&s.sex);
    // scanf("%d", &s.num);
    // getchar();

    // scanf("%s",s.name);
    // getchar();

    // scanf("%c", &s.sex);
    // getchar();
    // printf("%d-%s-%c\n",s.num, s.name, s.sex);

    //赋值固定数据
    s.num = 1001;
    strcpy(s.name ,"zhangsan");
    s.sex = '0';
    printf("%d-%s-%c\n",s.num, s.name, s.sex);

    // 定义一个变量p， 保存s 的地址
    struct Student*p = &s;// p :结构体指针

    //通过p指针间接操作num成员
    (*p).num = 1002;
    printf("%d-%s-%c\n",s.num, s.name, s.sex);

    p->num = 1003;
    printf("%d-%s-%c\n",s.num, s.name, s.sex);


    (&s)->num = 1004;
    printf("%d-%s-%c\n",s.num, s.name, s.sex);

    //int a;
    //(&a)->num = 1005;
    //printf("%d-%s-%c\n",s.num, s.name, s.sex);


}